package py.fpuna.aiwa.compraventa.droid.db;

import android.net.Uri;
import android.provider.BaseColumns;

public class CompraVentaContract {

	public static final String CONTENT_AUTHORITY = "py.fpuna.aiwa.compraventa";
	public static final Uri BASE_CONTENT_URI = Uri.parse("content://"
			+ CONTENT_AUTHORITY);

	public static final String URI_PATH_USUARIOS = "usuarios";
	public static final String URI_PATH_CLIENTES = "clientes";
	public static final String URI_PATH_PRODUCTOS = "productos";
	public static final String URI_PATH_VENTAS = "ventas";
	public static final String URI_PATH_DETALLE_VENTAS = "detalle_ventas";

	public interface Tables {
		String USUARIO = "usuario";
		String CLIENTE = "cliente";
		String VENTA = "venta";
		String DETALLE_VENTA = "detalle_venta";
		String PRODUCTO = "producto";
	}

	interface UsuarioColumns {
		String NOMBRE_USUARIO = "nombre_usuario";
		String PASSWORD = "password";
		String ACTIVO = "activo";
		String ULT_MODIFICACION = "ult_modificacion";
	}

	interface ClienteColumns {
		String ID_CLIENTE = "id_cliente";
		String NOMBRE = "nombre";
		String DIRECCION = "direccion";
		String RUC = "ruc";
		String ACTIVO = "activo";
		String LATITUD = "latitud";
		String LONGITUD = "longitud";
		String ULT_MODIFICACION = "ult_modificacion";
		String SINCRONIZADO = "sincronizado";
		String FOTOGRAFIA = "fotografia";
	}

	interface VentaColumns {
		String CLIENTE = "cliente";
		String FECHA = "fecha";
		String TOTAL = "total";
		String SINCRONIZADO = "sincronizado";
	}

	interface DetalleVentaColumns {
		String VENTA = "venta";
		String PRODUCTO = "producto";
		String PRECIO = "precio";
		String CANTIDAD = "cantidad";
	}

	interface ProductoColumns {
		String ID_PRODUCTO = "id_producto";
		String NOMBRE = "nombre";
		String PRECIO = "precio";
		String ACTIVO = "activo";
		String ULT_MODIFICACION = "ult_modificacion";
	}

	// USUARIO
	public static class Usuario implements UsuarioColumns, BaseColumns {
		public static final Uri CONTENT_URI = BASE_CONTENT_URI.buildUpon()
				.appendPath(URI_PATH_USUARIOS).build();
		public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.compraventa."
				+ URI_PATH_USUARIOS;
		public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.compraventa."
				+ URI_PATH_USUARIOS;

		public static Uri buildUri(Integer usuarioId) {
			return CONTENT_URI.buildUpon().appendPath(usuarioId.toString()).build();
		}

		public static String getId(Uri uri) {
			return uri.getPathSegments().get(1);
		}
	}

	// CLIENTE
	public static class Cliente implements ClienteColumns, BaseColumns {
		public static final Uri CONTENT_URI = BASE_CONTENT_URI.buildUpon()
				.appendPath(URI_PATH_CLIENTES).build();
		public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.compraventa."
				+ URI_PATH_CLIENTES;
		public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.compraventa."
				+ URI_PATH_CLIENTES;

		public static Uri buildUri(Integer clienteId) {
			return CONTENT_URI.buildUpon().appendPath(clienteId.toString())
					.build();
		}

		public static String getId(Uri uri) {
			return uri.getPathSegments().get(1);
		}
	}

	// PRODUCTO
	public static class Producto implements ProductoColumns, BaseColumns {
		public static final Uri CONTENT_URI = BASE_CONTENT_URI.buildUpon()
				.appendPath(URI_PATH_PRODUCTOS).build();
		public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.compraventa."
				+ URI_PATH_PRODUCTOS;
		public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.compraventa."
				+ URI_PATH_PRODUCTOS;

		public static Uri buildUri(Integer produdtoId) {
			return CONTENT_URI.buildUpon().appendPath(produdtoId.toString())
					.build();
		}

		public static String getId(Uri uri) {
			return uri.getPathSegments().get(1);
		}
	}

	// VENTA
	public static class Venta implements VentaColumns, BaseColumns {
		public static final Uri CONTENT_URI = BASE_CONTENT_URI.buildUpon()
				.appendPath(URI_PATH_VENTAS).build();
		public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.compraventa."
				+ URI_PATH_VENTAS;
		public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.compraventa."
				+ URI_PATH_VENTAS;

		public static Uri buildUri(Integer ventaId) {
			return CONTENT_URI.buildUpon().appendPath(ventaId.toString())
					.build();
		}

		public static String getId(Uri uri) {
			return uri.getPathSegments().get(1);
		}
	}

	// VENTA
	public static class DetalleVenta implements DetalleVentaColumns, BaseColumns {
		public static final Uri CONTENT_URI = BASE_CONTENT_URI.buildUpon()
				.appendPath(URI_PATH_DETALLE_VENTAS).build();
		public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.compraventa."
				+ URI_PATH_DETALLE_VENTAS;
		public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.compraventa."
				+ URI_PATH_DETALLE_VENTAS;

		public static Uri buildUri(Integer produdtoId) {
			return CONTENT_URI.buildUpon().appendPath(produdtoId.toString())
					.build();
		}

		public static String getId(Uri uri) {
			return uri.getPathSegments().get(1);
		}
	}

}